summaryrefslogtreecommitdiffstats
path: root/src/android/app/src/main/java/org/yuzu/yuzu_emu/ui/main/MainPresenter.kt
blob: a7ddc333f90a7adfd42c80e01d8492532d759c05 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

package org.yuzu.yuzu_emu.ui.main

import org.yuzu.yuzu_emu.BuildConfig
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.features.settings.utils.SettingsFile

class MainPresenter(private val view: MainView) {
    fun onCreate() {
        val versionName = BuildConfig.VERSION_NAME
        view.setVersionString(versionName)
    }

    private fun launchFileListActivity(request: Int) {
        view.launchFileListActivity(request)
    }

    fun handleOptionSelection(itemId: Int): Boolean {
        when (itemId) {
            R.id.menu_settings_core -> {
                view.launchSettingsActivity(SettingsFile.FILE_NAME_CONFIG)
                return true
            }
            R.id.button_add_directory -> {
                launchFileListActivity(REQUEST_ADD_DIRECTORY)
                return true
            }
            R.id.button_install_keys -> {
                launchFileListActivity(REQUEST_INSTALL_KEYS)
                return true
            }
            R.id.button_install_amiibo_keys -> {
                launchFileListActivity(REQUEST_INSTALL_AMIIBO_KEYS)
                return true
            }
            R.id.button_select_gpu_driver -> {
                launchFileListActivity(REQUEST_SELECT_GPU_DRIVER)
                return true
            }
        }
        return false
    }

    companion object {
        const val REQUEST_ADD_DIRECTORY = 1
        const val REQUEST_INSTALL_KEYS = 2
        const val REQUEST_INSTALL_AMIIBO_KEYS = 3
        const val REQUEST_SELECT_GPU_DRIVER = 4
    }
}